package cn.org.timespace.easyframe.dao.permission;

import java.util.List;

import cn.org.timespace.easyframe.action.permission.EFMenuModel;
import cn.org.timespace.easyframe.model.permission.EfMenu;

public interface EfMenuDao {

	public void save(EfMenu transientInstance);

	public void delete(EfMenu persistentInstance);

	public List<EfMenu> findByCondition(EFMenuModel model);
	
	public List<EfMenu> findTopLevelMenu();
	
	public List<EfMenu> findSecondLevelMenu();
	
	//根据权限(UserId)查询最顶层菜单(模块) parentMenuId = 0
	public List<EfMenu> findTopLevelMenu(String userId);
	 
	//根据权限(UserId)、模块查询模块顶层菜单(第二级)
	public List<EfMenu> findSecondLevelMenu(String userId,String modelId);
	
	//根据权限(UserId)、模块查询模块下级菜单(第三级)
	public List<EfMenu> findThirdLevelMenu(String userId,String modelId);

	public void update(EfMenu instance);
}